﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using ComunesMGI.DataTypes;

namespace ComunesMGI.Controles
{
    class TablaCamposCampoUser : TablaCamposCampo
    {
        private List<string> _opciones;

        public TablaCamposCampoUser(DataCampo dc)
            : base(dc)
        {
            _opciones = dc.Opciones;
        }

        protected override Control crearControl(ComunesMGI.DataTypes.DataCampo dc)
        {
            ComboBox campo = new ComboBox();
            campo.Width = 400;
            campo.DropDownStyle = ComboBoxStyle.DropDownList;
            // Agrego las opciones
            foreach (string opcion in dc.Opciones)
            {
                campo.Items.Add(opcion);
            }

            if (!string.IsNullOrEmpty(dc.Valor))
            {
                campo.SelectedItem = dc.Valor;
            }
            return campo;

        }

        protected override string obtenerValorCampo()
        {
            return ((ComboBox)_campo).SelectedItem.ToString();
        }

        protected override Enum.CampoSharepoint obtenerTipoCampo()
        {
            return ComunesMGI.Enum.CampoSharepoint.User;
        }

        protected override List<string> obtenerOpcionesCampo()
        {
            return _opciones;
        }

        protected override void validar(object sender, System.ComponentModel.CancelEventArgs e)
        {
            if (_requerido)
            {
                if (((ComboBox)_campo).SelectedItem == null)
                    _handlerError.SetError(_campo, "El campo " + _titulo + " es requerido");
                else
                    _handlerError.SetError(_campo, "");
            }
        }
    }
}


